#ifndef _SEM_HPP_
#define _SEM_HPP_


#include <semaphore.h>
#include<iostream>


class Sem
{
    public:
    Sem(int num)
    {
        sem_init(&sem_,0,num);
    }

    void p()
    {
        sem_wait(&sem_);
    }

    void v()
    {
        sem_post(&sem_);
    }

    ~Sem()
    {
        sem_destroy(&sem_);
    }
    private:
    sem_t sem_;
};

#endif